Вход

Просмотр полной версии : Убрать атрибут только у дочернего эелемента


nikoshot
26.03.2020, 13:46
ПОМОГИТЕ, Ни как не получается сделать..
Нужно по клику на div class="class_variant" добавить класс "new" для button class="buy__btn"

<div class="product-cut__main-info">
<div class="class_name"></div>
<div class="class_foto"></div>
<div class="class_variant"></div>
<div class="class_price"></div>
<div class="class_info">
<button class="buy__btn"></button>
</div>
</div>

И это только для текущего блока
<div class="product-cut__main-info">...</div>
так как таких блоков много...
Помогите плиз..

рони
26.03.2020, 14:00
nikoshot,
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
.new{
background-color: #008000;
}

</style>

<script>
addEventListener("click", event => {
const variant = event.target.closest(".class_variant")
if(!variant) return;
const parent = variant.closest(".product-cut__main-info");
const btn = parent.querySelector(".buy__btn");
btn.classList.add("new");
});

</script>
</head>
<body>
<div class="product-cut__main-info">
<div class="class_name"></div>
<div class="class_foto"></div>
<div class="class_variant">variant</div>
<div class="class_price"></div>
<div class="class_info">
<button class="buy__btn">btn</button>
</div>
</div>
</body>
</html>

nikoshot
26.03.2020, 14:59
Спасибо.. то что нужно)